How Does Browser Fingerprinting Work